package cn.picclife.mwx.manager.util;

import java.io.File;
import java.util.List;

public class FileUtil {

    /**
     *  获取目录下所有的txt文件
     * @param dir ==>包含/
     * @param fileNames ===>String
     */
    public static void findFileList(File dir, List<File> fileNames) {
        if (!dir.exists() || !dir.isDirectory()) {// 判断是否存在目录
            return;
        }
        String[] files = dir.list();// 读取目录下的所有目录文件信息
        for (int i = 0; i < files.length; i++) {// 循环，添加文件名或回调自身
            File file = new File(dir, files[i]);
            if (file.isFile()) {// 如果文件
                if (file.getName().endsWith(".txt")) {
                    fileNames.add(file);// 添加文件全路径名
                }
            } else {// 如果是目录
                findFileList(file, fileNames);// 回调自身继续查询
            }
        }
    }

    /**
     *  获取目录下所有的zip文件
     * @param dir ==>包含/
     * @param fileNames ===>File
     */
    public static void findFileZipList(File dir, List<File> fileNames) {
        if (!dir.exists() || !dir.isDirectory()) {// 判断是否存在目录
            return;
        }
        String[] files = dir.list();// 读取目录下的所有目录文件信息
        for (int i = 0; i < files.length; i++) {// 循环，添加文件名或回调自身
            File file = new File(dir, files[i]);
            if (file.isFile()) {// 如果文件
                if (file.getName().endsWith(".zip")) {
                    fileNames.add(file);// 添加文件全路径名
                }
            } else {// 如果是目录
                findFileZipList(file, fileNames);// 回调自身继续查询
            }
        }
    }
}